package com.fowo.api.model.report.receivable.detail;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.fowo.api.common.validator.*;
import io.swagger.v3.oas.annotations.media.Schema;
import javax.validation.constraints.*;
import lombok.Getter;
import lombok.Setter;

/**
 * 应收报告详情 预览导入辅助模型(全字段为文本类型)
 * @author yl_ls
 */
@Getter
@Setter
public class ReportReceivableDetailImportPo {

  /** 所属应收报告 */
  @ExcelProperty("所属应收报告")
  @Size(max = 50, message = "所属应收报告长度不能超过50")
  private String parentReportReceivableSids;

  @ExcelIgnore
  @Schema(title = "所属应收报告")
  private String parentReportReceivable;

  /** 单据时间 */
  @ExcelProperty("单据时间")
  @DateString(message = "单据时间不是有效的日期格式")
  private String postedDateLocale;

  /** 结算编号 */
  @ExcelProperty("结算编号")
  @Size(max = 50, message = "结算编号长度不能超过50")
  private String fid;

  /** MSKU */
  @ExcelProperty("MSKU")
  @Size(max = 50, message = "MSKU长度不能超过50")
  private String sellerSku;

  /** SKU */
  @ExcelProperty("SKU")
  @Size(max = 50, message = "SKU长度不能超过50")
  private String localSku;

  /** 品名 */
  @ExcelProperty("品名")
  @Size(max = 50, message = "品名长度不能超过50")
  private String localName;

  /** 摘要 */
  @ExcelProperty("摘要")
  @Size(max = 50, message = "摘要长度不能超过50")
  private String abstractName;

  /** 本期增加 */
  @ExcelProperty("本期增加")
  @DecimalString(message = "本期增加小数格式不正确", label = "本期增加")
  private String increase;

  /** 本期减少 */
  @ExcelProperty("本期减少")
  @DecimalString(message = "本期减少小数格式不正确", label = "本期减少")
  private String decrease;

  /** 余额 */
  @ExcelProperty("余额")
  @DecimalString(message = "余额小数格式不正确", label = "余额")
  private String balance;

  /** settlement_id */
  @ExcelProperty("settlement_id")
  @Size(max = 50, message = "settlement_id长度不能超过50")
  private String settlementId;
}
